#ifndef COLLEAGUE_H
#define COLLEAGUE_H

#include<string>
#include"mediator.h"
class IColleague{
public:
    IColleague(const std::string & name):m_Name(name){}
    virtual ~IColleague(){}
    std::string getName()const{return m_Name;}
    virtual void sendMessage(const IMediator&mediator,const std::string &message)const=0;
    virtual void receiveMessage(const IColleague* sender,const std::string &message)const=0;

protected:
    std::string m_Name;
};
#endif // COLLEAGUE_H

